%%
%% %CopyrightBegin%
%%
%% Copyright Hillside Technology Ltd. 2016. All Rights Reserved.
%%
%% Licensed under the Apache License, Version 2.0 (the "License");
%% you may not use this file except in compliance with the License.
%% You may obtain a copy of the License at
%%
%%     http://www.apache.org/licenses/LICENSE-2.0
%%
%% Unless required by applicable law or agreed to in writing, software
%% distributed under the License is distributed on an "AS IS" BASIS,
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
%% See the License for the specific language governing permissions and
%% limitations under the License.
%%
%% %CopyrightEnd%
%%

%% generated by soap from: e:/e_soap/soap/test/soap_SUITE_data/test_service.wsdl
%% for service "test_service" and port "test_port"
%% using options: [{service,"test_service"},{port,"test_port"},{generate,client},{namespaces,[{"test",undefined}]},{generate_tests,none},{http_client,soap_client_ibrowse},{client_name,"test_service_client"},{strict,true}]

%%% This file contains record and type decarations that are used by the WSDL.
%%%
%%% It also contains a macro 'INTERFACE' that is used to make information
%%% about the WSDL available to the SOAP implementation.
%%%
%%% It is possible (and in some cases necessary) to change the name of the
%%% record fields.
%%%
%%% It is possible to add default values, but be aware that these will only
%%% be used when *writing* an xml document.

%%% Records used to represent fault response messages:

-record(faultdetail, {uri :: string(),
                      tag :: string(),
                      text :: string()}).

-record(faultcode, {uri :: string(),
                    code :: string(),
                    subcode :: #faultcode{} % only v. 1.2
                   }).

-record(faultreason, {text :: string(),
                      language :: string()}).

-record(soap_fault_1_1, {faultcode :: #faultcode{},
                         faultstring :: string(),
                         faultactor :: string(),
                         detail :: [#faultdetail{}]}).

-record(soap_fault_1_2, {code :: #faultcode{},
                         reason :: [#faultreason{}],
                         role :: string(),
                         detail :: [#faultdetail{}]}).

%% xsd:QName values are translated to #qname{} records.
-record(qname, {uri :: string(),
                localPart :: string(),
                prefix :: string(),
                mappedPrefix :: string()}).



-record(header, {
	header_field :: string()}).

-type header() :: #header{}.


-record(response_body, {
	response :: string()}).

-type response_body() :: #response_body{}.


-record(request_body, {
	expected_response :: string()}).

-type request_body() :: #request_body{}.
-define(INTERFACE, {interface,"test_service",test_service,'1.1',
                    soap_client_ibrowse,soap_server_cowboy_1,undefined,
                    test_service_client,[],"test",
                    "http://schemas.xmlsoap.org/soap/envelope/",undefined,
                    undefined,"http://localhost:8080","test_port",
                    "test_port_binding","test_port_type",
                    [{op,"do_test",do_test,"do_test",undefined,
                      request_response,request_body,response_body,undefined}],
                    {model,
                     [{type,'_document',sequence,
                       [{el,
                         [{alt,request_body,request_body,[],1,1,true,
                           undefined},
                          {alt,response_body,response_body,[],1,1,true,
                           undefined},
                          {alt,header,header,[],1,1,true,undefined}],
                         1,1,undefined,2}],
                       [],undefined,undefined,1,1,1,false,undefined},
                      {type,header,sequence,
                       [{el,
                         [{alt,header_field,
                           {'#PCDATA',char},
                           [],1,1,true,undefined}],
                         1,1,undefined,2}],
                       [],undefined,undefined,2,1,1,undefined,undefined},
                      {type,response_body,sequence,
                       [{el,
                         [{alt,response,
                           {'#PCDATA',char},
                           [],1,1,true,undefined}],
                         1,1,undefined,2}],
                       [],undefined,undefined,2,1,1,undefined,undefined},
                      {type,request_body,sequence,
                       [{el,
                         [{alt,expected_response,
                           {'#PCDATA',char},
                           [],1,1,true,undefined}],
                         1,1,undefined,2}],
                       [],undefined,undefined,2,1,1,undefined,undefined}],
                     [{ns,"http://www.w3.org/2001/XMLSchema","xsd",qualified},
                      {ns,"test",undefined,unqualified}],
                     "test",[],false,skip},
                    1,undefined,
                    [{"test",undefined}]}).
